1. Technical Field
The present disclosure relates to managing changes to one or more files. In particular, the present disclosure relates to managing changes to one or more files using a link associated with changes and creating an updated version of the one or more files based on the changes.
2. Description of the Prior Art
Presently, it is difficult to identify parts of a file that need to be changed when an associated file is changed. For example, it is difficult to identify which parts of documentation for a product require updating when associated code for the product is changed, or vice versa. This can result in, for example, the documentation being out of date (e.g., because the documentation has not been updated to reflect changes in the code) or cause documentation associated with the code to be present in multiple locations and not be consistently updated in each of the locations.
At FIG. 1, there is depicted a block diagram of a prior art solution. As shown, the system comprises system 100 having client computer 105 operable to interact with server computer 107. The server computer 107 comprises coordinator 110 and version control system 115 having access to first data store 125 for storing one or more files. In the example herein, the files comprise code and associated documentation. The system further comprises linking system 120 having access to second data store 130 for storing one or more links.
At FIG. 2 there is provided a flow diagram of the process according to the prior art. At step 200, a user uses client computer 105 to make changes to code and to documentation and “commits” the changes to a change management system (e.g., server computer 107). Coordinator 110 receives the changes from client computer 105 and coordinates version control system 115 to access the files in first data store 125 and to update the relevant files (step 205). At step 210, Coordinator 110 coordinates linking system 120 to create a link. The links are created between one or more code files and one or more documentation files. Coordinator 110 coordinates linking system 120 to create a link between the code file(s) that was changed by the user and the documentation file(s) that was changed by the user. Linking system 120 links the files by use of a timestamp, wherein a code file and a documentation file are linked if they are committed at the same time. Alternatively, linking system 120 may link the files if changes associated with the file are committed under the same change item (which has an identifier) wherein a change item can be used to group changes associated with a logical unit of work. Linking system 120 stores the link in second data store 130.
The solution provided by the prior art, as described in FIGS. 1-2, is disadvantageous since this solution is coarse grained. For example, in the prior art links can only be created based on an exact timestamp or a change item. Further, it is not possible to easily identify which sections of the documentation relate to which sections of code.